home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Borland / Borland C++ V5.02 / TDDOC.PAK / TD_UTILS.TXT < prev   
Text File  |  1997-05-06  |  20KB  |  527 lines

  1. /*************************************************************************/
  2.                            TURBO DEBUGGER
  3.                          UTILITIES REFERENCE
  4.  
  5. This file contains information about the following Turbo Debugger utilities:
  6.  
  7. 1. TDSTRIP and TDSTRP32
  8. 2. TDMEM
  9. 3. TDWINI
  10. 4. TDRF
  11.  
  12. For convenience, when searching for information about a particular utility,
  13. you can search for the name of the utility followed by a colon (i.e. TDMEM:).
  14. Doing so will take you directly to the header for the utility specified.
  15.  
  16. For a list of all the command-line options available for TDSTRIP.EXE and
  17. TDSTRP32, just type the program  name and press Enter. For example,
  18. to see the command-line options for TDSTRIP.EXE, you enter
  19.  
  20.    TDSTRIP
  21.  
  22. For a list of all the command-line options available for TDMEM.EXE,
  23. enter the program name followed by -?.
  24.  
  25.    TDMEM -?
  26.  
  27.  
  28. 1. TDSTRIP: The symbol table stripping utility
  29. ==============================================
  30. TDSTRIP.EXE (and TDSTRP32, the 32-bit version of TDSTRIP) lets you
  31. remove the symbol table from an executable program. This is a faster
  32. way of removing the symbol table than recompiling and relinking your
  33. program without symbolic debug information. TDSTRIP can also remove
  34. debugging information from an .OBJ file:
  35.  
  36.    TDSTRIP PROGRAM.OBJ
  37.  
  38. You can also use TDSTRIP to remove the symbol table and put it in
  39. a separate file. This is useful when you want to convert the .EXE
  40. format program to a .COM file and still retain the debugging symbol
  41. table. TDSTRIP puts the symbol table in a file with the extension
  42. .TDS. Turbo Debugger looks for this file when it loads a program to
  43. debug that doesn't have a symbol table.
  44.  
  45.  
  46. TDSTRIP command-line options
  47. ----------------------------
  48. The general form of the DOS command line used to start TDSTRIP is:
  49.  
  50.    TDSTRIP [-s] [-c] <exename> [<outputname>]
  51.  
  52. If you don't specify the -s option, the symbol table is removed from
  53. the .EXE file <exename>. If you specify an <outputname>, the original
  54. .EXE file is left unchanged and a version with no symbol table is created
  55. as <outputname>.
  56.  
  57. If you do specify the -s option, the symbol table will be put in a
  58. file with the same name as <exename> but with the extension .TDS. If you
  59. specify an output file, the symbol table will be put in <outputname>.
  60.  
  61. If you specify the -c option, the input .EXE file is converted into a
  62. .COM file. If you use -c in conjunction with -s, you can convert an
  63. .EXE file with symbols into a .COM file with a separate .TDS symbol
  64. file. This lets you debug .COM files with Turbo Debugger while
  65. retaining full debugging information.
  66.  
  67. You can only convert certain .EXE files into .COM files. The same
  68. restrictions apply to the -c option of TDSTRIP as to the /t option of
  69. TLINK: Your program must start at location 100 hex, and it can't
  70. contain any segment fixups.
  71.  
  72. The default extension for <exename> is .EXE. If you add an extension,
  73. it overrides the default.
  74.  
  75. There are two default extensions for <outputname>,
  76.  
  77. o .TDS when you use the -s command-line switch
  78. o .EXE when you don't use the -s command-line switch
  79.  
  80. If you add an extension, it overrides the defaults.
  81.  
  82. Here are some sample TDSTRIP command lines. The following command
  83. removes the symbol table from MYPROG.EXE:
  84.  
  85.    TDSTRIP MYPROG
  86.  
  87. The following command removes the symbol table from MYPROG.OLD
  88. and places it in MYPROG.TDS:
  89.  
  90.    TDSTRIP -s MYPROG.OLD
  91.  
  92. The following command leaves MYPROG.EXE unchanged but creates another
  93. copy of it named MYPROG.NEW without a symbol table:
  94.  
  95.    TDSTRIP MYPROG MYPROG.NEW
  96.  
  97. The following command removes the symbol table from MYPROG.EXE and
  98. places it in MYSYMS.TDS:
  99.  
  100.    TDSTRIP -s MYPROG MYSYMS
  101.  
  102.  
  103. TDSTRIP error messages
  104. ----------------------
  105. Following is a list of TDSTRIP error messages:
  106.  
  107. Can't create file: ___
  108.   TDSTRIP couldn't create the output symbol or .EXE file. Either there
  109.   is no more room on your disk, or you specified an invalid output file
  110.   name.
  111.  
  112. Can't open file: ___
  113.   TDSTRIP could not locate the .EXE file from which you want to remove the
  114.   symbol table.
  115.  
  116. Error reading from input exe file
  117.   An error occurred during reading from the input executable program
  118.   file. Your disk may be unreadable. Try the operation again.
  119.  
  120. Error writing to output file: ___; disk may be full
  121.   TDSTRIP couldn't write to the output symbol or executable file. This
  122.   usually happens when there is no more room on your disk. You will have
  123.   to delete some files to make room for the file created by TDSTRIP.
  124.  
  125. Input file is not an .exe file
  126.   You've specified an input file name that isn't a valid executable
  127.   program. You can strip symbols only from .EXE programs because these
  128.   are the only ones that TLINK can put a symbol table in. Programs in
  129.   .COM file format don't have symbol tables and can't be processed by
  130.   TDSTRIP.
  131.  
  132. Invalid command-line option: ___
  133.   You've given an invalid command-line option when starting TDSTRIP
  134.   from the DOS command line.
  135.  
  136. Invalid exe file format
  137.   The input file appears to be an .EXE format program file, but
  138.   something is wrong with it. You should relink the program with TLINK.
  139.  
  140. Not enough memory
  141.   Your system doesn't have enough free memory for TDSTRIP to load and
  142.   process the .EXE file. This only happens in extreme circumstances
  143.   (TDSTRIP has very modest memory requirements). Try rebooting your 
  144.   system and running TDSTRIP again. You might have previously run a
  145.   program that allocated some memory that won't be freed until you reboot.
  146.  
  147. Program does not have a symbol table
  148.   You've specified an input file that's a valid .EXE file, but it
  149.   doesn't have a symbol table.
  150.  
  151. Program does not have a valid symbol table
  152.   The symbol table at the end of the .EXE file isn't a valid TLINK
  153.   symbol table. This can happen if you try to use TDSTRIP on a program
  154.   created by a linker other than TLINK. Relink the program with TLINK.
  155.  
  156. Too many arguments
  157.   You can supply a maximum of two arguments to TDSTRIP, the first being
  158.   the name of the executable program, and the second being the name of
  159.   the output file for symbols or the executable program.
  160.  
  161. You must supply an exe file name
  162.   You've started TDSTRIP without giving it the name of an .EXE program
  163.   file whose symbol table you want to strip.
  164.  
  165.  
  166. 2. TDMEM: The memory display utility
  167. ====================================
  168. TDMEM displays the current availability of your computer's memory.
  169. This includes Expanded or Extended memory, if it exists, and conventional
  170. memory.  This is useful when debugging TSR and device driver programs.
  171. You can use the File|Table relocate option in Turbo Debugger to specify
  172. a base segment address for the current symbol table that is shown when
  173. running TDMEM.
  174.  
  175.  
  176. 3. TDWINI: The video DLL setup utility
  177. ======================================
  178. TDWINI helps you select and configure the video DLL that you use with TDW.
  179. For complete instructions on this utility, see the online help (F1)
  180. provided with the utility.
  181.  
  182.  
  183. 4. TDRF: Utility for remote file commands and file transfer
  184. ===========================================================
  185. The remote file transfer utility (TDRF) works in conjunction with TDREMOTE
  186. or WREMOTE running on another system.  (For more information on TDREMOTE and
  187. WREMOTE, see the "Remote Debugging" appendix in the "Turbo Debugger User's 
  188. Guide"). With TDRF you can perform most DOS file maintenance operations on 
  189. the remote system. You can
  190.  
  191.   o copy files to the remote system
  192.   o copy files from the remote system
  193.   o make directories
  194.   o remove directories
  195.   o display directories
  196.   o change directories
  197.   o rename files
  198.   o delete files
  199.  
  200. Once you have started TDREMOTE or WREMOTE on the remote system, you can
  201. use TDRF at any time. You can start it directly from the DOS prompt, or
  202. you can access DOS from inside Turbo Debugger by using the File|DOS
  203. Shell command, then start TDRF (even while debugging a program on the
  204. remote system). This second method is useful if you've forgotten to put
  205. some files on the remote system that are required by the program you're
  206. debugging.
  207.  
  208. When describing TDRF in the following sections, we refer to the system
  209. you're typing at as the "local system" and any files there as "local
  210. files," and the other system connected by a serial cable or network as
  211. the "remote system" and any files there as "remote files."
  212.  
  213.  
  214. Starting TDRF from the DOS command line
  215. ---------------------------------------
  216. The general form of the command line for TDRF is
  217.  
  218.    TDRF [<options>] <command> [<arguments>]
  219.  
  220. The <options> control whether the link is network or serial, and if it's
  221. serial, the speed of the remote link and which port it runs on. The
  222. options are described in more detail in the next section.
  223.  
  224. <command> indicates the operation you want to perform. You can type the
  225. command either as a DOS command--like COPY, DEL, MD, and so on--or as
  226. a single-letter abbreviation.
  227.  
  228. <arguments> are any arguments to the command.
  229.  
  230. For example, to get a directory display of all files starting with ABC
  231. in the current directory on the remote system, you could type:
  232.  
  233.    TDRF DIR ABC*
  234.  
  235. All the commands are described fully after the next section.
  236.  
  237.  
  238. TDRF command-line options
  239. -------------------------
  240. You must start an option with either a hyphen (-) or a slash (/).
  241. The following list shows the command-line options for TDRF:
  242.  
  243. -rn<L>;<R>  Sets the link to network, the local name to <L>, and the remote
  244.             name to <R>.
  245.  
  246.   If you link over the network, the name of the local machine defaults to
  247.   "LOCAL" and the remote machine to "REMOTE". You can set your own name for
  248.   the machines by entering a name up to 16 characters long for either the
  249.   local machine, the remote machine, or both.
  250.  
  251.   You must be running TDREMOTE or WREMOTE with the -rn option on the remote
  252.   machine with the local machine name set to the same name as you've indicated
  253.   in the TDRF command.
  254.  
  255. -rsN        Sets the type of remote link to serial and the speed of the link.
  256.  
  257.   The -rs option sets the speed at which the remote serial link operates.
  258.   You must make sure you use the same speed with TDRF that you specified
  259.   when you started TDREMOTE or WREMOTE on the remote system. N can be 1, 2,
  260.   3, or 4, where 1 signifies a speed of 9600 baud, 2 signifies 19,200 baud,
  261.   3 signifies 38,400 baud, and 4 signifies 115,000 baud.
  262.  
  263.   In other words, the higher the number, the faster the data transfer
  264.   rate across the serial link. Normally, TDRF defaults to -rs4 (the highest
  265.   speed).
  266.  
  267. -rpN        Sets the remote serial link port.
  268.  
  269.   The -rp option specifies which port to use for the remote serial link.
  270.   N can be either 1 or 2, where 1 stands for COM1 and 2 stands for COM2.
  271.  
  272. -w          Writes options to the TDRF executable program file.
  273.  
  274.   You can make the TDRF command-line options permanent by writing them
  275.   back into the TDRF executable program image on disk. Do this by
  276.   specifying the -w command-line option along with the other options you
  277.   wish to make permanent. You will then be prompted for the name of the
  278.   executable program.
  279.  
  280.   If you're running on DOS 3.0 or later, the prompt will indicate the
  281.   path and file name that you executed TDRF from. You can accept this
  282.   name by pressing Enter, or you can enter a new executable file name.
  283.   The new name must already exist and must be a copy of the TDRF program 
  284.   that you've already made.
  285.  
  286.   If you're running on DOS 2.x, you'll have to supply the full path
  287.   and file name of the executable program.
  288.  
  289.   If you enter the name of an executable file that doesn't exist (a new
  290.   filename), TDRF will create a new executable file.
  291.  
  292.  
  293. TDRF commands
  294. -------------
  295. Following are the command names you can use with the TDRF utility. You
  296. can use the wildcards * and ? with the COPY, COPYFROM, DEL, and DIR
  297. commands.
  298.  
  299.  
  300. COPY
  301.  
  302.   Copies files from the local system to the remote system. You can also
  303.   type COPYTO instead of COPY. The single letter abbreviation for this
  304.   command is T.
  305.  
  306.   If you supply a single file name after the COPY command, that file
  307.   name will be copied to the current directory on the remote system. If
  308.   you supply a second file name after the name of the file on the local
  309.   system, the local file will be copied to that destination on the
  310.   remote system. You can specify either a new file name, a directory
  311.   name, or a drive name on the remote system. For example,
  312.  
  313.      TDRF COPY TEST1 \MYDIR
  314.  
  315.   copies file TEST1 from the local system to file MYDIR\TEST1 on the
  316.   remote system.
  317.  
  318.  
  319. COPYFROM
  320.  
  321.   Copies files from the remote system to the local system. The single
  322.   letter abbreviation for this command is F.
  323.  
  324.   If you supply a single file name after the COPYFROM command, that file
  325.   name will be copied from the current directory on the remote system to
  326.   the current directory on the local system. If you supply a second file
  327.   name after the name of the file on the remote system, the remote file
  328.   will be copied to that destination on the local system. You can
  329.   specify either a new file name, a directory name, or a drive name on
  330.   the local system. For example,
  331.  
  332.      TDRF COPYFROM MYFILE ..
  333.  
  334.   copies file MYFILE from the remote system to the parent directory of
  335.   the current directory on the local system.
  336.  
  337.      TDRF F TC*.* A:\TCDEMO
  338.  
  339.   copies all files beginning with TC on the current directory of the
  340.   remote system to the TCDEMO directory on the local system's drive A.
  341.   
  342.  
  343. DEL
  344.  
  345.   Erases a single file from the remote system. The single letter
  346.   abbreviation for this command is E.
  347.  
  348.   If you just give a file name with no directory or drive, the file is
  349.   deleted from the current directory on the remote system. For example,
  350.  
  351.      TDRF DEL XYZ
  352.  
  353.   removes file XYZ from the current directory of the remote system.
  354.  
  355.  
  356. DIR
  357.  
  358.   Displays a listing of the files in a directory on the remote system.
  359.   The single letter abbreviation for this command is D.
  360.  
  361.   This command behaves similarly to the equivalent DOS command. If
  362.   you don't specify a wildcard mask, it shows all the files in the
  363.   directory; if you do specify a mask, only those files will be listed.
  364.   You can interrupt the directory display at any time by pressing
  365.   Ctrl-Break.
  366.  
  367.   The directory listing is displayed in a format similar to that
  368.   used by the DOS DIR command. For example,
  369.   
  370.      TDRF DIR \SYS\*.SYS
  371.   
  372.   results in a display like the following:
  373.   
  374.   Directory of C:\SYS
  375.  
  376.   ANSI         SYS     4833  8-23-91  6:00a
  377.   VDISK        SYS     5190  8-23-91  6:00a
  378.   
  379.   
  380. REN
  381.  
  382.   Renames a single file on the remote system. The single letter
  383.   abbreviation for this command is R.
  384.  
  385.   You must supply two file names with this command: the original file
  386.   name and the new file name. The new name can specify a different
  387.   directory as part of the name, but not a different drive. For example,
  388.  
  389.      TDRF REN TEST1 \TEST2
  390.  
  391.   renames file TEST1 in the current directory in the remote to TEST2 in
  392.   the root directory. This effectively "moves" the file from one
  393.   directory to another. You can also use this command to simply rename a
  394.   file within a directory, without moving it to another directory.
  395.  
  396.  
  397. MD
  398.  
  399.   Makes a new directory on the remote system. The single letter
  400.   abbreviation for this command is M.
  401.   
  402.   You must supply the name of the directory to be created. If you don't
  403.   supply a directory path as part of the new directory name, the new
  404.   directory will be created in the current directory on the remote
  405.   system. For example,
  406.  
  407.      TDRF MD TEST
  408.  
  409.   creates a directory named TEST in the current directory on the remote
  410.   system.
  411.  
  412.  
  413. RD
  414.  
  415.   Removes an existing directory on the remote system. The single letter
  416.   abbreviation for this command is K.
  417.   
  418.   You must supply the name of the directory to be removed. If you don't
  419.   supply a directory path as part of the new directory name, the
  420.   directory will be removed from the current directory on the remote
  421.   system. For example,
  422.  
  423.      TDRF RD MYDIR
  424.  
  425.   removes a directory named MYDIR from the current directory on the
  426.   remote system.
  427.  
  428.  
  429. CD
  430.  
  431.   Changes to a new directory on the remote system. The single letter
  432.   abbreviation for this command is C.
  433.  
  434.   You must supply the name of the directory to change to. You can also
  435.   supply a new drive to switch to, or even supply a new drive and
  436.   directory all at once. For example,
  437.  
  438.      TDRF CD A:ABC
  439.  
  440.   makes drive A the current drive on the remote system, and switches to
  441.   directory ABC as well.
  442.  
  443.  
  444. TDRF messages
  445. -------------
  446. Following is a list of the messages you might encounter when working with
  447. TDRF:
  448.  
  449. "Can't create file on local system: ___"
  450.   You were copying a file from the remote system using the COPYFROM 
  451.   command, but the file could not be created on the local system. 
  452.   Either the disk is full on the local system, or the file name on the
  453.   remote system is the same as a directory name on the local system.
  454.  
  455. "Can't modify exe file"
  456.   The file name you specified to modify is not a valid copy of the TDRF
  457.   utility. You can only modify a copy of the TDRF utility with the -w
  458.   option.
  459.  
  460. "Can't open exe file to modify"
  461.   The file name you specified to be modified can't be opened. You've
  462.   probably entered an invalid or nonexistent file name.
  463.  
  464. "Error opening file: ___"
  465.   The file you wanted to transfer to the remote system could not be
  466.   opened. You probably specified a nonexistent or invalid file name.
  467.  
  468. "Error writing file: ___"
  469.   An error occurred while writing to a file on the local system,
  470.   probably because the local disk is full. Try deleting enough 
  471.   files to make room for the file you want to copy from the 
  472.   remote system.
  473.  
  474. "Error writing file ___ on remote system"
  475.   An error occurred while writing a file to the disk on the remote
  476.   system, probably because the remote disk is full. Try deleting
  477.   enough files to make room for the file you want to transfer.
  478.  
  479. "File name is a directory on remote"
  480.   You've tried to copy a file from the local to the remote system, but
  481.   the local file name exists as a directory on the remote system. You'll
  482.   have to rename the file by giving a second argument to the COPY
  483.   command.
  484.  
  485. "Interrupted"
  486.   You've pressed Ctrl-Break while waiting for communications to be
  487.   established with the remote system.
  488.  
  489. "Invalid command: ___"
  490.   You've entered a command that TDRF doesn't recognize. For each
  491.   command, you can use the DOS-style command word or the single-letter
  492.   abbreviation.
  493.  
  494. "Invalid command line option: ___"
  495.   You've given an invalid command-line option when starting TDRF from
  496.   the DOS command line.
  497.  
  498. "Invalid destination disk drive"
  499.   You've specified a nonexistent disk drive letter in your command.
  500.   Remember that the remote system might have a different number of disk
  501.   drives than the local system.
  502.  
  503. "No matching files on remote"
  504.   You've done a DIR command, but either there are no files in the
  505.   directory on the remote system, or no files match the wildcard
  506.   specification that you gave as an argument to the DIR command.
  507.  
  508. "No remote command specified"
  509.   You haven't specified any command on the DOS command line; TDRF has
  510.   nothing to do.
  511.  
  512. "Too few arguments"
  513.   You haven't supplied enough arguments for the command you
  514.   requested. Some commands require an argument, like DEL, MD,
  515.   CD, RD, and so on.
  516.  
  517. "Too many arguments"
  518.   You've specified too many arguments for the command you requested.
  519.   No command requires more than two arguments, and some require only one.
  520.  
  521. "Wrong version of remote driver"
  522.   You're using incompatible versions of TDRF and TDREMOTE. Make sure
  523.   you're using the latest version of each utility.
  524.  
  525.  
  526. \**************************** END OF FILE ********************************\
  527.